package com.ruoyi.system.service.impl;

import java.util.List;

import com.ruoyi.common.annotation.DataScope;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.DwCarMapper;
import com.ruoyi.system.domain.DwCar;
import com.ruoyi.system.service.IDwCarService;

/**
 * 车辆信息Service业务层处理
 * 
 * @author ruoyi
 * @date 2024-01-31
 */
@Service
public class DwCarServiceImpl implements IDwCarService 
{
    @Autowired
    private DwCarMapper dwCarMapper;

    /**
     * 查询车辆信息
     * 
     * @param carId 车辆信息主键
     * @return 车辆信息
     */
    @Override
    public DwCar selectDwCarByCarId(Long carId)
    {
        return dwCarMapper.selectDwCarByCarId(carId);
    }

    @Override
    public DwCar selectDwCarByCarNumber(String carNumber){ return dwCarMapper.selectDwCarByCarNumber(carNumber); }
    /**
     * 查询车辆信息列表
     * 
     * @param dwCar 车辆信息
     * @return 车辆信息
     */
    @Override
    @DataScope(deptAlias = "d", userAlias = "su")
    public List<DwCar> selectDwCarList(DwCar dwCar)
    {
        return dwCarMapper.selectDwCarList(dwCar);
    }

    /**
     * 新增车辆信息
     * 
     * @param dwCar 车辆信息
     * @return 结果
     */
    @Override
    public int insertDwCar(DwCar dwCar)
    {
        dwCar.setCreateTime(DateUtils.getNowDate());
        return dwCarMapper.insertDwCar(dwCar);
    }

    /**
     * 修改车辆信息
     * 
     * @param dwCar 车辆信息
     * @return 结果
     */
    @Override
    public int updateDwCar(DwCar dwCar)
    {
        dwCar.setUpdateTime(DateUtils.getNowDate());
        return dwCarMapper.updateDwCar(dwCar);
    }

    /**
     * 批量删除车辆信息
     * 
     * @param carIds 需要删除的车辆信息主键
     * @return 结果
     */
    @Override
    public int deleteDwCarByCarIds(Long[] carIds)
    {
        return dwCarMapper.deleteDwCarByCarIds(carIds);
    }

    /**
     * 删除车辆信息信息
     * 
     * @param carId 车辆信息主键
     * @return 结果
     */
    @Override
    public int deleteDwCarByCarId(Long carId)
    {
        return dwCarMapper.deleteDwCarByCarId(carId);
    }
}
